package com.ruyuan.eshop.order.api;

import com.ruyuan.eshop.common.core.JsonResult;
import com.ruyuan.eshop.common.page.PagingInfo;
import com.ruyuan.eshop.order.domain.dto.AfterSaleItemDTO;
import com.ruyuan.eshop.order.domain.dto.AfterSaleOrderDetailDTO;
import com.ruyuan.eshop.order.domain.dto.AfterSaleOrderListDTO;
import com.ruyuan.eshop.order.domain.query.AfterSaleQuery;
import com.ruyuan.eshop.order.domain.request.AfterSaleDetailRequest;

/**
 <p>
 订单中心-售后查询业务接口
 </p>
 * 儒猿课堂: http://www.ruyuan2020.com
 * @Author zhonghuashishan
 * @Remark 有问题直接联系客服VX: ruyuan-1111 ，源码-笔记-技术交流群
 * @Version 1.0
 **/
public interface AfterSaleQueryApi {

    /**
     * 查询售后列表v1
     *
     * @param query
     * @return
     */
    JsonResult<PagingInfo<AfterSaleOrderListDTO>> listAfterSalesV1(AfterSaleQuery query);

    /**
     <p>
     查询售后列表v2
     </p>
     * 儒猿课堂: http://www.ruyuan2020.com
     * @Author zhonghuashishan
     * @Remark 有问题直接联系客服VX: ruyuan-1111 ，源码-笔记-技术交流群
     * @Version 1.0
     **/
    JsonResult<PagingInfo<AfterSaleOrderDetailDTO>> listAfterSalesV2(AfterSaleQuery query);

    /**
     <p>
     查询售后单详情 v1
     </p>
     * 儒猿课堂: http://www.ruyuan2020.com
     * @Author zhonghuashishan
     * @Remark 有问题直接联系客服VX: ruyuan-1111 ，源码-笔记-技术交流群
     * @Version 1.0
     **/
    JsonResult<AfterSaleOrderDetailDTO> afterSaleDetailV1(String afterSaleId);


    /**
     <p>
     查询售后单详情 v2
     </p>
     * 儒猿课堂: http://www.ruyuan2020.com
     * @Author zhonghuashishan
     * @Remark 有问题直接联系客服VX: ruyuan-1111 ，源码-笔记-技术交流群
     * @Version 1.0
     **/
    JsonResult<AfterSaleOrderDetailDTO> afterSaleDetailV2(AfterSaleDetailRequest request);
    /**
     <p>
     根据订单id和skuCode查询订单条目
     </p>
     * 儒猿课堂: http://www.ruyuan2020.com
     * @Author zhonghuashishan
     * @Remark 有问题直接联系客服VX: ruyuan-1111 ，源码-笔记-技术交流群
     * @Version 1.0
     **/
    AfterSaleItemDTO getOrderItemByOrderIdAndSkuCode(String orderId, String skuCode);

}